将 AWS 中的 2 节点配置扩展为 4 节点配置

AWS 中的 IBM Spectrum Virtualize for Public Cloud 软件支持 2 节点和 4 节点集群配置。通过向 AWS 中的现有堆栈添加节点,可以将现有的 2 节点集群扩展为 4 节点集群。

先决条件

在将 2 节点集群扩展为 4 节点集群之前,必须确保要添加到该配置和集群中现有节点的两个节点已更新为最新版本的 IBM Spectrum Virtualize for Public Cloud 软件。有关更新的信息,请参阅手动更新系统

要将 AWS 中的现有 2 节点集群扩展为 4 节点集群,请完成以下步骤:
  1. 使用 AWS 缺省管理员概要文件或安装程序概要文件登录到 AWS 管理控制台
  2. 选择 CloudFormation > 堆栈。选择现有的 2 节点集群配置。它显示为采用以下名称格式的嵌套工作负载:[stack-name]-workstack-{resource id}。在使用 AWS CloudFormation 模板创建集群时已指定了 stack-name。例如,如果已指定 sv-cloud-0809 作为堆栈名称,那么堆栈的全名为 sv-cloud-0809-WorkloadStack-12HXFWUEE5MGQ 且标记为 NESTED
  3. 单击更新
  4. 选择更新的嵌套堆栈,然后单击更新堆栈
  5. 更新堆栈页面上,选择以下选项:
    • 先决条件 - 准备模板部分中,选择替换当前模板
    • 指定模板部分中,选择 Amazon S3 URL
    • Amazon S3 URL 字段中,输入显示在 StackUpdateTemplate 字段中的 URL。当在 AWS 中首次安装节点实例时,此信息将包含在摘要和电子邮件通知中。当在 AWS 中首次安装节点实例时,此信息将包含在输出选项卡上。
  6. 单击下一步
  7. 指定堆栈详细信息页面上,保留现有配置的已配置值。确保复查 Amazon EC2 配置部分并确认新 I/O 组的节点实例类型是正确的。单击下一步
  8. 配置堆栈选项页面上,保留已配置的值。单击下一步
  9. 复查页面上,复查这些选项。单击下一步
  10. 变更集预览页面上,复查已更改的资源。已修改了多个资源,并为节点另外添加了两个 EC2 实例。验证这些更改后,确保已选中我确认 AWS CloudFormation 可能创建 IAM 资源
  11. 单击更新堆栈。验证嵌套堆栈的状态是否更改为 Update_In_Progress
  12. 在堆栈列示为 UPDATE_COMPLETE 后,在 CloudFormation > 堆栈页面上检查针对已更新的嵌套堆栈列出的详细信息。其中包含现有集群及新节点的配置。例如:
    描述
    IBMSVNode1Port1NodeIP 10.0.95.137 IBM SV 节点 1 端口 1 的节点 IP
    IBMSVNode1Port2NodeIP 10.0.89.45 IBM SV 节点 1 端口 2 的节点 IP
    IBMSVNode1PortIP1 10.0.93.124 IBM SV 节点 1 端口 IP1
    IBMSVNode1PortIP2 10.0.81.253 IBM SV 节点 1 端口 IP2
    IBMSVNode1ServiceIP 10.0.92.244 IBM SV 节点 1 的服务 IP
    IBMSVNode2Port1NodeIP 10.0.79.148 IBM SV 节点 2 端口 1 的节点 IP
    IBMSVNode2Port2NodeIP 10.0.65.181 IBM SV 节点 2 端口 2 的节点 IP
    IBMSVNode2PortIP1 10.0.94.124 IBM SV 节点 2 端口 IP1
    IBMSVNode2PortIP2 10.0.82.253 IBM SV 节点 2 端口 IP2
    IBMSVNode2ServiceIP 10.0.91.163 IBM SV 节点 2 的服务 IP
    IBMSVNode3Port1NodeIP 10.0.89.6 IBM SV 节点 3 端口 1 的节点 IP
    IBMSVNode3Port2NodeIP 10.0.94.117 IBM SV 节点 3 端口 2 的节点 IP
    IBMSVNode3PortIP1 10.0.95.124 IBM SV 节点 3 端口 IP1
    IBMSVNode3PortIP2 10.0.83.253 IBM SV 节点 3 端口 IP2
    IBMSVNode3ServiceIP 10.0.88.197 IBM SV 节点 3 的服务 IP
    IBMSVNode4Port1NodeIP 10.0.78.135 IBM SV 节点 4 端口 1 的节点 IP
    IBMSVNode4Port2NodeIP 10.0.71.22 IBM SV 节点 4 端口 2 的节点 IP
    IBMSVNode4PortIP1 10.0.96.124 IBM SV 节点 4 端口 P1
    IBMSVNode4PortIP2 10.0.84.253 IBM SV 节点 4 端口 P2
    IBMSVNode4ServiceIP 10.0.72.85 IBM SV 节点 4 的服务 IP
    IBMSVQuorumClientEC2IP 10.0.51.189 IBM SV Quorum Client EC2 的专用 IP
    IBMSVVersion x.x.x.x IBM SV Cloud 版本
  13. 在验证堆栈的更新确认信息后,登录到各个节点的服务 IP 地址,并在输出选项卡上列出的所有端口上完成端口发现:
    节点 1
    ssh -i [key] superuser@IBMSVNode1ServiceIP
     satask addnodediscoverysubnet -net   IBMSVNode3Port1NodeIP/32
     satask addnodediscoverysubnet -net   IBMSVNode3Port2NodeIP/32
     satask addnodediscoverysubnet -net   IBMSVNode4Port1NodeIP/32
     satask addnodediscoverysubnet -net   IBMSVNode4Port2NodeIP/32
    其中,IBMSVNode1ServiceIP 是节点 1 的服务 IP 地址;IBMSVNode3Port1NodeIPIBMSVNode3Port2NodeIPIBMSVNode4Port1NodeIPIBMSVNode4Port2NodeIP 是已添加的节点上各个端口的 IP 地址。
    节点 2
    ssh -i [key] superuser@IBMSVNode2ServiceIP
    
     satask addnodediscoverysubnet -net   IBMSVNode3Port1NodeIP/32
     satask addnodediscoverysubnet -net   IBMSVNode3Port2NodeIP/32
     satask addnodediscoverysubnet -net   IBMSVNode4Port1NodeIP/32
     satask addnodediscoverysubnet -net   IBMSVNode4Port2NodeIP/32
    其中,IBMSVNode2ServiceIP 是节点 2 的服务 IP 地址;IBMSVNode3Port1NodeIPIBMSVNode3Port2NodeIPIBMSVNode4Port1NodeIPIBMSVNode4Port2NodeIP 是已添加的节点上各个端口的 IP 地址。
    节点 3
    ssh -i [key] superuser@IBMSVNode3ServiceIP
    satask addnodediscoverysubnet -net   IBMSVNode1Port1NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode1Port2NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode2Port1NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode2Port2NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode4Port1NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode4Port2NodeIP/32
    其中,IBMSVNode3ServiceIP 是节点 3 的服务 IP 地址;IBMSVNode1Port1NodeIPIBMSVNode1Port2NodeIPIBMSVNode2Port1NodeIPIBMSVNode2Port2NodeIPIBMSVNode4Port1NodeIPIBMSVNode4Port2NodeIP 是已添加的节点上各个端口的 IP 地址。
    节点 4
    ssh -i [key] superuser@IBMSVNode4ServiceIP
    satask addnodediscoverysubnet -net   IBMSVNode1Port1NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode1Port2NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode2Port1NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode2Port2NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode3Port1NodeIP/32
    satask addnodediscoverysubnet -net   IBMSVNode3Port2NodeIP/32
    其中,IBMSVNode4ServiceIP 是节点 4 的服务 IP 地址;IBMSVNode1Port1NodeIPIBMSVNode1Port2NodeIPIBMSVNode2Port1NodeIPIBMSVNode2Port2NodeIPIBMSVNode3Port1NodeIPIBMSVNode3Port2NodeIP 是各个端口的 IP 地址。
  14. 通过输入以下命令,确定系统上各个候选节点的每个面板名称:
    svcinfo lsnodecandidate
    其中,在向系统添加节点时,会使用 panel_name 的值。
  15. 通过输入以下命令,验证每个面板名称是否与实例的 EC2 名称和 IP 地址相对应:
    sainfo lsservicestatus panel_name
    panel_name 是上一步中节点的名称。验证 service_IP_address 字段是否与 EC2 实例的专用 IP 地址对应。
  16. 在配置节点上,通过输入以下命令来添加各个新节点:
    svctask addnode -iogrp io_group_name -panelname panel_name
  17. 通过使用管理 GUI 或命令行界面,配置新节点的端口 IP 地址:
    • 在管理 GUI 中,选择设置 > 网络 > 以太网端口。输入各个节点的所有端口的 IP 地址。
    • 在命令行界面中,针对新节点上的端口 1 和 2,输入以下命令:
      svctask cfgportip -node node_name -ip xx.xx.xx.xx -mask xx.xx.xx.xx -gw xx.xx.xx.xx <port id>
      
      其中,xx.xx.xx.xx 是您要配置的端口的 IP 地址、子网掩码和网关。这些值是在安装期间选择公共子网和专用子网时创建的。要显示子网信息,请转至 AWS 控制台并选择 VPC > 子网
  18. 在管理 GUI 或命令行中创建新的 IP 定额应用程序:
    • 在管理 GUI 中,选择设置 > 系统 > IP 定额,然后单击下载 IPv4 应用程序。此时会生成 ipquorum.jar 文件并将其添加到 dumps 目录。
    • 在命令行界面中,输入以下命令:
      mkquorumapp
  19. 在将新应用程序上载到系统后,将定额应用程序重新安装到 AWS 配置中。有关信息,请参阅重新安装 IP 定额应用程序